aboutsummaryrefslogtreecommitdiff
path: root/gcc/config.gcc
diff options
context:
space:
mode:
authorJason Thorpe <thorpej@wasabisystems.com>2002-06-04 05:02:44 +0000
committerJason Thorpe <thorpej@gcc.gnu.org>2002-06-04 05:02:44 +0000
commitb655555e3395efa3e077bed8da70967051213f23 (patch)
treedba477555760564dfc58c022fd821810cc866ee8 /gcc/config.gcc
parent6d8fd7bbd7f1fa8a0b985e3cd0e2120143d4d557 (diff)
downloadgcc-b655555e3395efa3e077bed8da70967051213f23.zip
gcc-b655555e3395efa3e077bed8da70967051213f23.tar.gz
gcc-b655555e3395efa3e077bed8da70967051213f23.tar.bz2
* config.gcc (sh5-*-netbsd*, sh5l*-*-netbsd*)
(sh64-*-netbsd*, sh64l*-*-netbsd*): New targets. * config/sh/netbsd-elf.h (TARGET_VERSION_ENDIAN) (TARGET_VERSION_CPU): Define according to the default target. (TARGET_VERSION): Use TARGET_VERSION_ENDIAN and TARGET_VERSION_CPU. (TARGET_OS_CPP_BUILTINS): Use NETBSD_OS_CPP_BUILTINS_LP64 if TARGET_SHMEDIA64. (LINK_DEFAULT_CPU_EMUL): Define according to the default target. (SUBTARGET_LINK_EMUL_SUFFIX): Define. (SUBTARGET_LINK_SPEC): Define. (LINK_SPEC): Use SH_LINK_SPEC. (ASM_SPEC): Remove. (TARGET_DEFAULT): Use TARGET_CPU_DEFAULT. (FUNCTION_PROFILER): Add cases for TARGET_SHMEDIA32 and TARGET_SHMEDIA64 which abort, for now. * config/sh/t-netbsd-sh5: New file. * config/sh/t-netbsd-sh5-32: New file. * config/sh/t-netbsd-sh5-64: New file. From-SVN: r54230
Diffstat (limited to 'gcc/config.gcc')
-rw-r--r--gcc/config.gcc21
1 files changed, 19 insertions, 2 deletions
diff --git a/gcc/config.gcc b/gcc/config.gcc
index f84a425..7dd42e2 100644
--- a/gcc/config.gcc
+++ b/gcc/config.gcc
@@ -2248,7 +2248,8 @@ sh-*-linux*)
fi
float_format=sh
;;
-sh-*-netbsdelf* | shl*-*-netbsdelf*)
+sh-*-netbsdelf* | shl*-*-netbsdelf* | sh5-*-netbsd* | sh5l*-*-netbsd* | \
+ sh64-*-netbsd* | sh64l*-*-netbsd*)
tm_file="${tm_file} dbxelf.h elfos.h sh/elf.h netbsd.h netbsd-elf.h sh/netbsd-elf.h"
tmake_file="${tmake_file} sh/t-sh sh/t-elf"
case $machine in
@@ -2260,7 +2261,23 @@ sh-*-netbsdelf* | shl*-*-netbsdelf*)
tmake_file="${tmake_file} sh/t-be"
;;
esac
- tmake_file="${tmake_file} sh/t-netbsd"
+ case $machine in
+ sh5*-*)
+ # SHmedia, 32-bit ABI
+ target_cpu_default="SH5_BIT|SH4_BIT|SH3E_BIT"
+ tmake_file="${tmake_file} sh/t-netbsd-sh5 sh/t-netbsd-sh5-32"
+ ;;
+ sh64*-*)
+ # SHmedia, 64-bit ABI
+ target_cpu_default="SH5_BIT|SH4_BIT"
+ tmake_file="${tmake_file} sh/t-netbsd-sh5 sh/t-netbsd-sh5-64"
+ ;;
+ *)
+ # SH3, software floating point
+ target_cpu_default="SH1_BIT|SH2_BIT|SH3_BIT"
+ tmake_file="${tmake_file} sh/t-netbsd"
+ ;;
+ esac
float_format=sh
;;
sh-*-*)