diff options
author | Paul Brook <pbrook@gcc.gnu.org> | 2008-03-03 14:30:48 +0000 |
---|---|---|
committer | Paul Brook <pbrook@gcc.gnu.org> | 2008-03-03 14:30:48 +0000 |
commit | bf98ec6c84b2214ff2f4f7614b42d90b3a8201ad (patch) | |
tree | 04b6034461ff1523e97a87f42762e23838f44671 /gcc/config/arm/t-arm-elf | |
parent | 9a3277660593535784174ac188b09a151ca9aaee (diff) | |
download | gcc-bf98ec6c84b2214ff2f4f7614b42d90b3a8201ad.zip gcc-bf98ec6c84b2214ff2f4f7614b42d90b3a8201ad.tar.gz gcc-bf98ec6c84b2214ff2f4f7614b42d90b3a8201ad.tar.bz2 |
config.gcc: Add arm/t-arm-softfp and soft-fp/t-softfp to arm configs.
2008-03-03 Paul Brook <paul@codesourcery.com>
gcc/
* config.gcc: Add arm/t-arm-softfp and soft-fp/t-softfp to arm
configs. Add new --with-arch options.
* config/arm/t-arm-softfp: New file.
* config/arm/elf.h: Disable soft-fp routines on everything except
ARMv6-M.
* config/arm/ieee754-df.S: Rename L_* to L_arm_*.
* config/arm/ieee754-sf.S: Ditto.
* config/arm/t-arm-elf: Ditto.
* config/arm/arm.c (FL_FOR_ARCH6M): Define.
(all_architectures): Add armv6-m.
(arm_output_mi_thunk): Add TARGET_THUMB1_ONLY thunks.
* config/arm/lib1funcs.asm: Add __ARM_ARCH_6M__ conditionals.
Include bpabi-v6m.S.
* config/arm/arm.h (TARGET_THUMB1_ONLY): Define.
(ARM_DECLARE_FUNCTION_NAME): Handle Thumb-1 only thunks.
* config/arm/sfp-machine.h: New file.
* config/arm/bpabi-v6m.S: New file.
* config/arm/arm-cores.def: Add cortex-m1.
* config/arm/arm-tune.md: Regenerate.
* config/arm/libunwind.S: Add ARMv6-M implementation.
* config/arm/bpabi.h: Add renames for soft-float routines.
* doc/invoke.texi: Document -mcpu=cortex-m1 and -march=armv6-m.
From-SVN: r132837
Diffstat (limited to 'gcc/config/arm/t-arm-elf')
-rw-r--r-- | gcc/config/arm/t-arm-elf | 12 |
1 files changed, 9 insertions, 3 deletions
diff --git a/gcc/config/arm/t-arm-elf b/gcc/config/arm/t-arm-elf index b423bbb..31ba396 100644 --- a/gcc/config/arm/t-arm-elf +++ b/gcc/config/arm/t-arm-elf @@ -1,10 +1,16 @@ LIB1ASMSRC = arm/lib1funcs.asm +# For most CPUs we have an assembly soft-float implementations. +# However this is not true for ARMv6M. Here we want to use the soft-fp C +# implementation. The soft-fp code is only build for ARMv6M. This pulls +# in the asm implementation for other CPUs. LIB1ASMFUNCS = _udivsi3 _divsi3 _umodsi3 _modsi3 _dvmd_tls _bb_init_func \ _call_via_rX _interwork_call_via_rX \ _lshrdi3 _ashrdi3 _ashldi3 \ - _negdf2 _addsubdf3 _muldivdf3 _cmpdf2 _unorddf2 _fixdfsi _fixunsdfsi \ - _truncdfsf2 _negsf2 _addsubsf3 _muldivsf3 _cmpsf2 _unordsf2 \ - _fixsfsi _fixunssfsi _floatdidf _floatdisf _floatundidf _floatundisf + _arm_negdf2 _arm_addsubdf3 _arm_muldivdf3 _arm_cmpdf2 _arm_unorddf2 \ + _arm_fixdfsi _arm_fixunsdfsi \ + _arm_truncdfsf2 _arm_negsf2 _arm_addsubsf3 _arm_muldivsf3 \ + _arm_cmpsf2 _arm_unordsf2 _arm_fixsfsi _arm_fixunssfsi \ + _arm_floatdidf _arm_floatdisf _arm_floatundidf _arm_floatundisf MULTILIB_OPTIONS = marm/mthumb MULTILIB_DIRNAMES = arm thumb |