diff options
-rw-r--r-- | gas/ChangeLog | 8 | ||||
-rw-r--r-- | gas/config/tc-arm.c | 19 |
2 files changed, 27 insertions, 0 deletions
diff --git a/gas/ChangeLog b/gas/ChangeLog index 3332f0b..83d8d8e 100644 --- a/gas/ChangeLog +++ b/gas/ChangeLog @@ -1,3 +1,11 @@ +2003-06-13 Richard Earnshaw <rearnsha@arm.com> + + * tc-arm.c (FPU_DEFAULT, case TE_LINUX): Default to FPU_ARCH_FPA. + (FPU_DEFAULT, case TE_NetBSD): Default to FPU_ARCH_VFP for ELF, + FPU_ARCH_FPA for AOUT. + (md_begin): Don't try to guess the floating point architecture from + the CPU if the OS ABI (Linux, NetBSD) mandates a particular form. + 2003-06-13 Robert Millan <zeratul2@wanadoo.es> * configure.in: Add i386-netbsd-gnu target. diff --git a/gas/config/tc-arm.c b/gas/config/tc-arm.c index 85b2b05..ee1b521 100644 --- a/gas/config/tc-arm.c +++ b/gas/config/tc-arm.c @@ -134,6 +134,19 @@ #endif #endif +#ifdef TE_LINUX +#define FPU_DEFAULT FPU_ARCH_FPA +#endif + +#ifdef TE_NetBSD +#ifdef OBJ_ELF +#define FPU_DEFAULT FPU_ARCH_VFP /* Soft-float, but VFP order. */ +#else +/* Legacy a.out format. */ +#define FPU_DEFAULT FPU_ARCH_FPA /* Soft-float, but FPA order. */ +#endif +#endif + /* For backwards compatibility we default to the FPA. */ #ifndef FPU_DEFAULT #define FPU_DEFAULT FPU_ARCH_FPA @@ -10183,10 +10196,16 @@ md_begin () } else if (mfpu_opt == -1) { +#if !(defined (TE_LINUX) || defined (TE_NetBSD)) + /* Some environments specify a default FPU. If they don't, infer it + from the processor. */ if (mcpu_fpu_opt != -1) mfpu_opt = mcpu_fpu_opt; else mfpu_opt = march_fpu_opt; +#else + mfpu_opt = FPU_DEFAULT; +#endif } if (mfpu_opt == -1) |