On Tue, 2015-03-10 at 08:19 +0900, Kaz Kojima wrote:
> Yoshinori Sato <ys...@users.sourceforge.jp> wrote:
> >>    * config/sh/t-linux (MULTILIB_EXCEPTIONS): Define for m2a cases.
> [snip]
> > It works fine.
> 
> Thanks for checking.  I've committed it on trunk as revision 221287.
> 
> Regards,
>       kaz
> 

I think the same should be done in t-sh and in t-linux we could add the
SH1 little endian exception, too ... just in case (see attached patch).
I'm not sure whether TM_MULTILIB_EXCEPTIONS_CONFIG is needed in t-linux
or not.  Moreover, I don't understand why t-linux doesn't pick up
MULTILIB_EXCEPTIONS from t-sh.... any ideas?

Cheers,
Oleg
Index: gcc/config/sh/t-linux
===================================================================
--- gcc/config/sh/t-linux	(revision 221308)
+++ gcc/config/sh/t-linux	(working copy)
@@ -1,9 +1,9 @@
 MULTILIB_DIRNAMES= 
 MULTILIB_MATCHES = 
 
-DEFAULT_ENDIAN = $(word 1,$(TM_ENDIAN_CONFIG))
+# SH1 and SH2A support big endian only.
 ifeq ($(DEFAULT_ENDIAN),ml)
-MULTILIB_EXCEPTIONS = m2a m2a/ml
+MULTILIB_EXCEPTIONS = m1 ml/m1 m2a* ml/m2a* $(TM_MULTILIB_EXCEPTIONS_CONFIG)
 else
-MULTILIB_EXCEPTIONS = ml/m2a
+MULTILIB_EXCEPTIONS = ml/m1 ml/m2a* $(TM_MULTILIB_EXCEPTIONS_CONFIG)
 endif
Index: gcc/config/sh/t-sh
===================================================================
--- gcc/config/sh/t-sh	(revision 221308)
+++ 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) \

Reply via email to