aboutsummaryrefslogtreecommitdiff
path: root/gcc/config.gcc
diff options
context:
space:
mode:
authorPaul Brook <paul@codesourcery.com>2007-02-14 00:29:52 +0000
committerPaul Brook <pbrook@gcc.gnu.org>2007-02-14 00:29:52 +0000
commitc147eacb9d2972a2adbabe57dcd28c327cc8c28a (patch)
treed6fb6aef5ef320b0b983ada9172b0305d4a4669b /gcc/config.gcc
parent2f0fa07cd933449f0b1119b0ccabbd1410a59faf (diff)
downloadgcc-c147eacb9d2972a2adbabe57dcd28c327cc8c28a.zip
gcc-c147eacb9d2972a2adbabe57dcd28c327cc8c28a.tar.gz
gcc-c147eacb9d2972a2adbabe57dcd28c327cc8c28a.tar.bz2
config.gcc: Add arm*-*-uclinux-*eabi.
2007-02-13 Paul Brook <paul@codesourcery.com> gcc/ * config.gcc: Add arm*-*-uclinux-*eabi. * config/arm/uclinux-elf.h (TARGET_OS_CPP_BUILTINS): Define. (SUBTARGET_EXTRA_LINK_SPEC): Define. (STARTFILE_SPEC, ENDFILE_SPEC): Remove broken -shared handling. (LINK_GCC_C_SEQUENCE_SPEC): Undef. (LINK_SPEC): Define. (LIB_SPEC): Define. * config/arm/arm.c (arm_override_options): Use r9 as EABI PIC register. * config/arm/uclinux-eabi.h: New file. * config/arm/linux-eabi.h (WCHAR_TYPE): Remove. * config/arm/linux-gas.h (WCHAR_TYPE): Use unsigned long on AAPCS based targets. From-SVN: r121902
Diffstat (limited to 'gcc/config.gcc')
-rw-r--r--gcc/config.gcc14
1 files changed, 13 insertions, 1 deletions
diff --git a/gcc/config.gcc b/gcc/config.gcc
index de39b9e..877d25c 100644
--- a/gcc/config.gcc
+++ b/gcc/config.gcc
@@ -731,8 +731,20 @@ arm*-*-linux*) # ARM GNU/Linux with ELF
tm_file="$tm_file arm/aout.h arm/arm.h"
;;
arm*-*-uclinux*) # ARM ucLinux
- tm_file="dbxelf.h elfos.h arm/unknown-elf.h arm/elf.h arm/aout.h arm/arm.h arm/linux-gas.h arm/linux-elf.h arm/uclinux-elf.h"
+ tm_file="dbxelf.h elfos.h arm/unknown-elf.h arm/elf.h arm/linux-gas.h arm/uclinux-elf.h arm/uclinux-elf.h"
tmake_file="arm/t-arm arm/t-arm-elf"
+ case ${target} in
+ arm*-*-uclinux-*eabi)
+ tm_file="$tm_file arm/bpabi.h arm/uclinux-eabi.h"
+ tmake_file="$tmake_file arm/t-bpabi"
+ # The BPABI long long divmod functions return a 128-bit value in
+ # registers r0-r3. Correctly modeling that requires the use of
+ # TImode.
+ need_64bit_hwint=yes
+ # The EABI requires the use of __cxa_atexit.
+ default_use_cxa_atexit=yes
+ esac
+ tm_file="$tm_file arm/aout.h arm/arm.h"
;;
arm*-*-ecos-elf)
tm_file="dbxelf.h elfos.h arm/unknown-elf.h arm/elf.h arm/aout.h arm/arm.h arm/ecos-elf.h"