diff options
author | amylaar <amylaar@138bc75d-0d04-0410-961f-82ee72b054a4> | 2004-06-21 18:18:40 +0000 |
---|---|---|
committer | amylaar <amylaar@138bc75d-0d04-0410-961f-82ee72b054a4> | 2004-06-21 18:18:40 +0000 |
commit | 07168dd98fd199aa0c70fd92fb78809af505abd9 (patch) | |
tree | 86e1f7f0c1d2eaf9c82bebc4634b4a5fb0fdfe18 /gcc/config/sh/t-sh | |
parent | ef9d8353231f15eb5b9c7086207f32382168f355 (diff) | |
download | gcc-07168dd98fd199aa0c70fd92fb78809af505abd9.tar.gz |
2004-06-21 Kaz Kojima <kkojima@gcc.gnu.org>
* config/sh/t-linux (MULTILIB_OPTIONS): Remove.
2004-06-21 J"orn Rennecke <joern.rennecke@superh.com>
* sh.h (SUPPORT_SH1, SUPPORT_SH2E, SUPPORT_SH4): Conditionanlly define.
(SUPPORT_SH4_SINGLE): Likewise.
(TARGET_SWITCHES): Break out switches for cpu subtargets:
(TARGET_SWITCH_SH1, TARGET_SWITCH_SH2, TARGET_SWITCH_SH2E): Define.
(TARGET_SWITCH_SH3, TARGET_SWITCH_SH3E): Likewise.
(TARGET_SWITCH_SH4_SINGLE_ONLY, TARGET_SWITCH_SH4_SINGLE): Likewise.
(TARGET_SWITCH_SH4_NOFPU, TARGET_SWITCH_SH4): Likewise.
(TARGET_SWITCH_SH5_64MEDIA, TARGET_SWITCH_SH5_64MEDIA_NOFPU): Likewise.
(TARGET_SWITCHES_SH5_32MEDIA): Likewise.
(TARGET_SWITCHES_SH5_32MEDIA_NOFPU): Likewise.
(SELECT_SH5_64, SELECT_SH5_64_NOFPU): Rename to:
(SELECT_SH5_64MEDIA, SELECT_SH5_64MEDIA_NOFPU)
(SELECT_SH5_32, SELECT_SH5_32_NOFPU): Rename to:
(SELECT_SH5_32MEDIA, SELECT_SH5_32MEDIA_NOFPU).
(SH_MULTILIB_CPU_DEFAULT, MULTILIB_DEFAULTS): Define.
(ASM_ISA_SPEC_DEFAULT, ASM_ISA_DEFAULT_SPEC): Likewise.
* sh64.h (ASM_SPEC, LINK_DEFAULT_CPU_EMUL): Don't redefine.
(TARGET_DEFAULT): Likewise.
* config/sh/t-elf: Amend comment.
* config/sh/t-1e, config/sh/t-mlib-sh1: New files.
* config/sh/t-mlib-sh2, config/sh/t-mlib-sh2e: Likewise.
* config/sh/t-mlib-sh3, config/sh/t-mlib-sh3e: Likewise.
* config/sh/t-mlib-sh4, config/sh/t-mlib-sh4-nofpu: Likewise.
* config/sh/t-mlib-sh4-single: Likewise.
* config/sh/t-mlib-sh4-single-only: Likewise.
* config/sh/t-mlib-sh5-32media: Likewise.
* config/sh/t-mlib-sh5-32media-nofpu: Likewise.
* config/sh/t-mlib-sh5-64media: Likewise.
* config/sh/t-mlib-sh5-64media-nofpu: Likewise.
* config/sh/t-mlib-sh5-compact: Likewise.
* config/sh/t-mlib-sh5-compact-nofpu: Likewise.
* config/sh/t-sh: (MULTILIB_ENDIAN): Add mb.
(MULTILIB_CPUS): Define.
(MULTILIB_OPTIONS): Use MULTILIB_CPUS.
(MULTILIB_MATCHES): Use some shell code to calculate it.
(MULTILIB_EXCEPTIONS): Change to ml/m1.
* config/sh/elf.h (SUBTARGET_ASM_ISA_SPEC): Use ASM_ISA_DEFAULT_SPEC.
* config/sh/netbsd-elf.h: Update code which sets TARGET_VERSION_CPU.
(LINK_DEFAULT_CPU_EMUL): Don't redefine.
(NO_PROFILE_COUNTERS): Define to 1.
* config/sh/t-netbsd (MULTILIB_OPTIONS): Don't append to.
(MULTILIB_DIRNAMES, MULTILIB_MATCHES, MULTILIB_EXCEPTIONS): Don't zap.
* config/sh/t-netbsd-sh5-64 (MULTILIB_OPTIONS): Don't redefine.
(MULTILIB_MATCHES): Don't zap.
(MULTILIB_DIRNAMES): Use MULTILIB_RAW_DIRNAMES.
* config/sh/t-sh64 (MULTILIB_OPTIONS): Don't redefine.
(MULTILIB_MATCHES, MULTILIB_EXCEPTIONS): Don't zap.
(MULTILIB_RAW_DIRNAMES): Define.
(MULTILIB_DIRNAMES): Use it.
* config.gcc: Also set cpu_type / need_64bit_hwint for sh[be]*-*-*.
(sh*linux configurations): Merge into:
(sh*elf / sh*kaos configurations). Support --with-endian, --with-cpu,
--with-multilib-list options. Support sh-superh-elf configuration.
(sh*-netbsd*): Use SELECT_SH* macros.
(supported_defaults): sh[123456ble]-*-* | sh-*-* support "cpu".
Merge sh*-*-netbsd* configurations into sh-elf configurations.
* config/sh/t-netbsd-sh5, config/sh/t-le, config/sh/t-le: Delete.
* config/sh/t-monolib: Likewise.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@83444 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/config/sh/t-sh')
-rw-r--r-- | gcc/config/sh/t-sh | 27 |
1 files changed, 23 insertions, 4 deletions
diff --git a/gcc/config/sh/t-sh b/gcc/config/sh/t-sh index 15aaba1ece6..11ab0c36bcd 100644 --- a/gcc/config/sh/t-sh +++ b/gcc/config/sh/t-sh @@ -21,11 +21,30 @@ fp-bit.c: $(srcdir)/config/fp-bit.c echo '#endif' >> fp-bit.c cat $(srcdir)/config/fp-bit.c >> fp-bit.c -MULTILIB_ENDIAN = ml -MULTILIB_OPTIONS= $(MULTILIB_ENDIAN) m2/m2e/m4-single-only/m4-single/m4 +MULTILIB_ENDIAN = ml/mb +MULTILIB_CPUS= $(ML_sh1)$(ML_sh2e)$(ML_sh2)$(ML_sh3e)$(ML_sh3)$(ML_sh4_nofpu)$(ML_sh4_single_only)$(ML_sh4_single)$(ML_sh4)$(ML_m5_32media)$(ML_m5_32media_nofpu)$(ML_m5_compact)$(ML_m5_compact_nofpu)$(ML_m5_64media)$(ML_m5_64media_nofpu) + +MULTILIB_OPTIONS= $(MULTILIB_ENDIAN) $(MULTILIB_CPUS:/=) MULTILIB_DIRNAMES= -MULTILIB_MATCHES = m2=m3 m2e=m3e m2=m4-nofpu -MULTILIB_EXCEPTIONS = ml +#MULTILIB_MATCHES = m2=m3 m2e=m3e m2=m4-nofpu +MULTILIB_MATCHES = $(shell \ + multilibs="$(MULTILIB_OPTIONS)" ; \ + for abi in m1,m2,m3,m4-nofpu \ + m2e,m3e,m4-single-only \ + m5-32media,m5-compact,m5-32media \ + m5-32media-nofpu,m5-compact-nofpu,m5-32media-nofpu; do \ + subst= ; \ + for lib in `echo $$abi|tr , ' '` ; do \ + if test "`echo $$multilibs|sed s/$$lib//`" != "$$multilibs"; then \ + subst=$$lib ; \ + elif test x$$subst != x ; then \ + echo $$subst=$$lib ; \ + fi \ + done \ + done) + +# SH1 only supports big endian. +MULTILIB_EXCEPTIONS = ml/m1 LIBGCC = stmp-multilib INSTALL_LIBGCC = install-multilib |