diff options
| author | nickc <nickc@138bc75d-0d04-0410-961f-82ee72b054a4> | 2004-04-14 17:31:33 +0000 |
|---|---|---|
| committer | nickc <nickc@138bc75d-0d04-0410-961f-82ee72b054a4> | 2004-04-14 17:31:33 +0000 |
| commit | d746b29ba0a20e2debada1b48a14e7c19fb7377c (patch) | |
| tree | c3d8b0aad9d67ec5ba2f34e233c3eae554762ad7 | |
| parent | df1cf42e7a9870ed6516a3381459fa614b34412d (diff) | |
| download | ppe42-gcc-d746b29ba0a20e2debada1b48a14e7c19fb7377c.tar.gz ppe42-gcc-d746b29ba0a20e2debada1b48a14e7c19fb7377c.zip | |
* config/arm/arm.c (arm_override_options): If the user has not specified an
ABI, then default to AAPCS for the iWMMXt processor.
* config/arm/t-xscale-elf: Remove redundant multilib specifications.
* config/arm/t-xscale-coff: Likewise.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@80683 138bc75d-0d04-0410-961f-82ee72b054a4
| -rw-r--r-- | gcc/ChangeLog | 7 | ||||
| -rw-r--r-- | gcc/config/arm/arm.c | 7 | ||||
| -rw-r--r-- | gcc/config/arm/t-xscale-coff | 12 | ||||
| -rw-r--r-- | gcc/config/arm/t-xscale-elf | 12 |
4 files changed, 25 insertions, 13 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 0312f280199..63351f1cfec 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,10 @@ +2004-04-14 Nick Clifton <nickc@redhat.com> + + * config/arm/arm.c (arm_override_options): If the user has not + specified an ABI, then default to AAPCS for the iWMMXt processor. + * config/arm/t-xscale-elf: Remove redundant multilib specifications. + * config/arm/t-xscale-coff: Likewise. + 2004-04-14 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> * builtins.c (fold_builtin_isdigit): New. diff --git a/gcc/config/arm/arm.c b/gcc/config/arm/arm.c index 6f340df7a90..4d57e28fbb8 100644 --- a/gcc/config/arm/arm.c +++ b/gcc/config/arm/arm.c @@ -856,7 +856,12 @@ arm_override_options (void) error ("invalid ABI option: -mabi=%s", target_abi_name); } else - arm_abi = ARM_DEFAULT_ABI; + { + if (TARGET_IWMMXT) + arm_abi = ARM_ABI_AAPCS; + else + arm_abi = ARM_DEFAULT_ABI; + } if (TARGET_IWMMXT && !ARM_DOUBLEWORD_ALIGN) error ("iwmmxt requires an AAPCS compatible ABI for proper operation"); diff --git a/gcc/config/arm/t-xscale-coff b/gcc/config/arm/t-xscale-coff index 89f371f4928..686fd9be7ce 100644 --- a/gcc/config/arm/t-xscale-coff +++ b/gcc/config/arm/t-xscale-coff @@ -20,19 +20,19 @@ dp-bit.c: $(srcdir)/config/fp-bit.c echo '#endif' >> dp-bit.c cat $(srcdir)/config/fp-bit.c >> dp-bit.c -MULTILIB_OPTIONS = mlittle-endian/mbig-endian -MULTILIB_DIRNAMES = le be +MULTILIB_OPTIONS = mbig-endian +MULTILIB_DIRNAMES = be MULTILIB_EXCEPTIONS = MULTILIB_MATCHES = mbig-endian=mbe mlittle-endian=mle # Note XScale does not support 26 bit APCS. # Note XScale does not support hard FP -MULTILIB_OPTIONS += mno-thumb-interwork/mthumb-interwork -MULTILIB_DIRNAMES += normal interwork +MULTILIB_OPTIONS += mthumb-interwork +MULTILIB_DIRNAMES += interwork -MULTILIB_OPTIONS += marm/mthumb -MULTILIB_DIRNAMES += arm thumb +MULTILIB_OPTIONS += mthumb +MULTILIB_DIRNAMES += thumb MULTILIB_EXCEPTIONS += *mhard-float/*mthumb* MULTILIB_REDUNDANT_DIRS = interwork/thumb=thumb diff --git a/gcc/config/arm/t-xscale-elf b/gcc/config/arm/t-xscale-elf index b72c21ce980..03a886c7bfa 100644 --- a/gcc/config/arm/t-xscale-elf +++ b/gcc/config/arm/t-xscale-elf @@ -20,19 +20,19 @@ dp-bit.c: $(srcdir)/config/fp-bit.c echo '#endif' >> dp-bit.c cat $(srcdir)/config/fp-bit.c >> dp-bit.c -MULTILIB_OPTIONS = mlittle-endian/mbig-endian -MULTILIB_DIRNAMES = le be +MULTILIB_OPTIONS = mbig-endian +MULTILIB_DIRNAMES = be MULTILIB_EXCEPTIONS = MULTILIB_MATCHES = mbig-endian=mbe mlittle-endian=mle # Note XScale does not support 26 bit APCS. # Note XScale does not support hard FP -MULTILIB_OPTIONS += mno-thumb-interwork/mthumb-interwork -MULTILIB_DIRNAMES += normal interwork +MULTILIB_OPTIONS += mthumb-interwork +MULTILIB_DIRNAMES += interwork -MULTILIB_OPTIONS += marm/mthumb -MULTILIB_DIRNAMES += arm thumb +MULTILIB_OPTIONS += mthumb +MULTILIB_DIRNAMES += thumb MULTILIB_EXCEPTIONS += *mhard-float/*mthumb* MULTILIB_REDUNDANT_DIRS = interwork/thumb=thumb |

