diff options
Diffstat (limited to 'gcc/config.gcc')
-rw-r--r-- | gcc/config.gcc | 21 |
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-*-*) |