On Thu, 2015-03-26 at 09:45 +0900, Kaz Kojima wrote: > Oleg Endo <oleg.e...@t-online.de> wrote: > > Sorry, I'm a bit confused. Do you mean something like the attached > > patch? If so, it means that the original patch for this problem > > https://gcc.gnu.org/ml/gcc-patches/2015-03/msg00424.html > > should have been in t-sh and not in t-linux, right? > > Yes, I think so. Even sh-elf configured with --with-endian='little,big' > failed to build with the similar 'SH2a does not support little-endian' > error.
I've committed the attached patches on trunk (r221685), 4.9 (r221686) and 4.8 (r221687). Cheers, Oleg
Index: gcc/config/sh/t-sh =================================================================== --- gcc/config/sh/t-sh (revision 221670) +++ gcc/config/sh/t-sh (working copy) @@ -63,8 +63,12 @@ done \ done) -# SH1 only supports big endian. +# SH1 and SH2A support big endian only. +ifeq ($(DEFAULT_ENDIAN),ml) +MULTILIB_EXCEPTIONS = m1 ml/m1 m2a* ml/m2a* $(TM_MULTILIB_EXCEPTIONS_CONFIG) +else MULTILIB_EXCEPTIONS = ml/m1 ml/m2a* $(TM_MULTILIB_EXCEPTIONS_CONFIG) +endif MULTILIB_OSDIRNAMES = \ $(OTHER_ENDIAN)=!$(OTHER_ENDIAN) \ Index: gcc/config/sh/t-linux =================================================================== --- gcc/config/sh/t-linux (revision 221670) +++ gcc/config/sh/t-linux (working copy) @@ -1,9 +1,2 @@ MULTILIB_DIRNAMES= MULTILIB_MATCHES = - -DEFAULT_ENDIAN = $(word 1,$(TM_ENDIAN_CONFIG)) -ifeq ($(DEFAULT_ENDIAN),ml) -MULTILIB_EXCEPTIONS = m2a m2a/ml -else -MULTILIB_EXCEPTIONS = ml/m2a -endif
Index: gcc/config/sh/t-sh =================================================================== --- gcc/config/sh/t-sh (revision 221685) +++ gcc/config/sh/t-sh (working copy) @@ -63,8 +63,12 @@ done \ done) -# SH1 only supports big endian. +# SH1 and SH2A support big endian only. +ifeq ($(DEFAULT_ENDIAN),ml) +MULTILIB_EXCEPTIONS = m1 ml/m1 m2a* ml/m2a* $(TM_MULTILIB_EXCEPTIONS_CONFIG) +else MULTILIB_EXCEPTIONS = ml/m1 ml/m2a* $(TM_MULTILIB_EXCEPTIONS_CONFIG) +endif MULTILIB_OSDIRNAMES = \ $(OTHER_ENDIAN)=!$(OTHER_ENDIAN) \