aboutsummaryrefslogtreecommitdiff
path: root/gcc/config.gcc
diff options
context:
space:
mode:
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-*-*)