This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
Fix extra multilibs for arm-elf target
- From: Nick Clifton <nickc at cambridge dot redhat dot com>
- To: gcc-patches at gcc dot gnu dot org
- Date: 08 May 2002 15:59:55 +0100
- Subject: Fix extra multilibs for arm-elf target
Hi Guys,
I am checking in the patch below to fix a couple of problems with
the extra multilibs generated for the arm-elf target. If the extra
multilib generation is enabled that is. Since these are all
commented out at the moment, this patch will not actually change the
behavior of the default toolchain.
The problems were:
1. The big-endian/little-endian multilib definition was overriding
the arm/thumb multilib definition, so no thumb multilibs would
be created.
2. A set of hardware floating point multilibs were being built
for the Thumb, when the thumb does not support hardware
floating point.
3. A set of APCS-26 ABI multilibs were being built for the
Thumb. when the thumb does not support these either.
Cheers
Nick
2002-05-08 Nick Clifton <nickc@cambridge.redhat.com>
* config/arm/t-arm-elf (MULTILIB): Do not allow big-endian/
little-endian multilibs to override arm/thumb multilibs.
Do not build hardware floating point multilibs, nor apcs-26
multilibs for the Thumb.
Index: gcc/config/arm/t-arm-elf
===================================================================
RCS file: /cvs/gcc/gcc/gcc/config/arm/t-arm-elf,v
retrieving revision 1.15
diff -c -3 -p -w -r1.15 t-arm-elf
*** gcc/config/arm/t-arm-elf 14 Sep 2001 10:19:30 -0000 1.15
--- gcc/config/arm/t-arm-elf 8 May 2002 14:34:43 -0000
*************** MULTILIB_OPTIONS = marm/mthumb
*** 25,40 ****
MULTILIB_DIRNAMES = arm thumb
MULTILIB_EXCEPTIONS =
! # MULTILIB_OPTIONS = mlittle-endian/mbig-endian
! # MULTILIB_DIRNAMES = le be
# MULTILIB_EXCEPTIONS =
# MULTILIB_MATCHES = mbig-endian=mbe mlittle-endian=mle
#
# MULTILIB_OPTIONS += mhard-float/msoft-float
# MULTILIB_DIRNAMES += fpu soft
#
# MULTILIB_OPTIONS += mapcs-32/mapcs-26
# MULTILIB_DIRNAMES += 32bit 26bit
#
# MULTILIB_OPTIONS += mno-thumb-interwork/mthumb-interwork
# MULTILIB_DIRNAMES += normal interwork
--- 25,42 ----
MULTILIB_DIRNAMES = arm thumb
MULTILIB_EXCEPTIONS =
! # MULTILIB_OPTIONS += mlittle-endian/mbig-endian
! # MULTILIB_DIRNAMES += le be
# MULTILIB_EXCEPTIONS =
# MULTILIB_MATCHES = mbig-endian=mbe mlittle-endian=mle
#
# MULTILIB_OPTIONS += mhard-float/msoft-float
# MULTILIB_DIRNAMES += fpu soft
+ # MULTILIB_EXCEPTIONS += *mthumb/*mhard-float*
#
# MULTILIB_OPTIONS += mapcs-32/mapcs-26
# MULTILIB_DIRNAMES += 32bit 26bit
+ # MULTILIB_EXCEPTIONS += *mthumb/*mapcs-26*
#
# MULTILIB_OPTIONS += mno-thumb-interwork/mthumb-interwork
# MULTILIB_DIRNAMES += normal interwork