mti-linux.h (SYSROOT_SUFFIX_SPEC): Add micromips and mips16 directories.
authorSteve Ellcey <sellcey@imgtec.com>
Wed, 29 May 2013 15:16:30 +0000 (15:16 +0000)
committerSteve Ellcey <sje@gcc.gnu.org>
Wed, 29 May 2013 15:16:30 +0000 (15:16 +0000)
2013-05-29  Steve Ellcey  <sellcey@imgtec.com>

* config/mips/mti-linux.h (SYSROOT_SUFFIX_SPEC): Add micromips
and mips16 directories.
* config/mips/t-mti-linux (MULTILIB_OPTIONS): Add micromips and
mips16.
(MULTILIB_DIRNAMES): Ditto.
(MULTILIB_EXCEPTIONS): Add new exceptions.
* config/mips/t-mti-elf (MULTILIB_OPTIONS): Add micromips.
(MULTILIB_DIRNAMES): Ditto.
(MULTILIB_EXCEPTIONS): Add new exceptions.

From-SVN: r199411

gcc/ChangeLog
gcc/config/mips/mti-linux.h
gcc/config/mips/t-mti-elf
gcc/config/mips/t-mti-linux

index a57c56dd78e230931de4d46da18e5a4d20ade992..e074334841decaa39cdb0d720126357ecc9e7932 100644 (file)
@@ -1,3 +1,15 @@
+2013-05-29  Steve Ellcey  <sellcey@imgtec.com>
+
+       * config/mips/mti-linux.h (SYSROOT_SUFFIX_SPEC): Add micromips
+       and mips16 directories.
+       * config/mips/t-mti-linux (MULTILIB_OPTIONS): Add micromips and
+       mips16.
+       (MULTILIB_DIRNAMES): Ditto.
+       (MULTILIB_EXCEPTIONS): Add new exceptions.
+       * config/mips/t-mti-elf (MULTILIB_OPTIONS): Add micromips.
+       (MULTILIB_DIRNAMES): Ditto.
+       (MULTILIB_EXCEPTIONS): Add new exceptions.
+
 2012-05-29  Chris Schlumberger-Socha <chris.schlumberger-socha@arm.com>
            Marcus Shawcroft  <marcus.shawcroft@arm.com>
 
index a3fb48976bdd4c2deb30b59eda76ff6a92b7201b..45bc0b88107ea50428d2108356120dd8337b5035 100644 (file)
@@ -20,7 +20,7 @@ along with GCC; see the file COPYING3.  If not see
 /* This target is a multilib target, specify the sysroot paths.  */
 #undef SYSROOT_SUFFIX_SPEC
 #define SYSROOT_SUFFIX_SPEC \
-    "%{mips32:/mips32}%{mips64:/mips64}%{mips64r2:/mips64r2}%{mabi=64:/64}%{mel|EL:/el}%{msoft-float:/sof}"
+    "%{mips32:/mips32}%{mips64:/mips64}%{mips64r2:/mips64r2}%{mips16:/mips16}%{mmicromips:/micromips}%{mabi=64:/64}%{mel|EL:/el}%{msoft-float:/sof}"
 
 #undef DRIVER_SELF_SPECS
 #define DRIVER_SELF_SPECS                                              \
index 3f0868fb856456f82ac664fa778c54676297527b..bce8f06345200ab65e803598374585cf8bdbde2b 100644 (file)
 # along with GCC; see the file COPYING3.  If not see
 # <http://www.gnu.org/licenses/>.
 
-MULTILIB_OPTIONS = mips32/mips64/mips64r2 mips16 mabi=64 EL msoft-float
-MULTILIB_DIRNAMES = mips32 mips64 mips64r2 mips16 64 el sof
-MULTILIB_MATCHES = EL=mel EB=meb
+# The default build is mips32r2, hard-float big-endian.  Add mips32,
+# soft-float, and little-endian variations.
 
-# We do not want to build mips16 versions of mips64* architectures.
-MULTILIB_EXCEPTIONS += *mips64*/*mips16*
+MULTILIB_OPTIONS = mips32/mips64/mips64r2 mips16 mmicromips mabi=64 EL msoft-float
+MULTILIB_DIRNAMES = mips32 mips64 mips64r2 mips16 micromips 64 el sof
+MULTILIB_MATCHES = EL=mel EB=meb
 
-# 64 bit ABI is not supported on mips32 architecture.
+# The 64 bit ABI is not supported on the mips32 architecture.
 MULTILIB_EXCEPTIONS += *mips32*/*mabi=64*
 
-# The 64 bit ABI is not supported on the mips32r2 bit architecture.
-# Because mips32r2 is the default the exception list is a little messy.
-# Basically we are saying any list that doesn't specify mips32, mips64,
-# or mips64r2 but does specify mabi=64 is not allowed because that
-# would be defaulting to the mips32r2 architecture.
+# The 64 bit ABI is not supported on the mips32r2 architecture.
+# Because mips32r2 is the default we can't use that flag to trigger
+# the exception so we check for mabi=64 with no specific mips
+# architecture flag instead.
 MULTILIB_EXCEPTIONS += mabi=64*
-MULTILIB_EXCEPTIONS += mips16/mabi=64*
+
+# We do not want to build mips16 versions of mips64* architectures.
+MULTILIB_EXCEPTIONS += *mips64*/*mips16*
+MULTILIB_EXCEPTIONS += *mips16/mabi=64*
+
+# We only want micromips for mips32r2 architecture and we do not want
+# it used in conjunction with -mips16.
+MULTILIB_EXCEPTIONS += *mips16/mmicromips*
+MULTILIB_EXCEPTIONS += *mips64*/mmicromips*
+MULTILIB_EXCEPTIONS += *mips32/mmicromips*
+MULTILIB_EXCEPTIONS += *mmicromips/mabi=64*
index 775a68d9daeb8ad63202e43d1dba1e3edb94bb7e..bce8f06345200ab65e803598374585cf8bdbde2b 100644 (file)
@@ -19,8 +19,8 @@
 # The default build is mips32r2, hard-float big-endian.  Add mips32,
 # soft-float, and little-endian variations.
 
-MULTILIB_OPTIONS = mips32/mips64/mips64r2 mabi=64 EL msoft-float
-MULTILIB_DIRNAMES = mips32 mips64 mips64r2 64 el sof
+MULTILIB_OPTIONS = mips32/mips64/mips64r2 mips16 mmicromips mabi=64 EL msoft-float
+MULTILIB_DIRNAMES = mips32 mips64 mips64r2 mips16 micromips 64 el sof
 MULTILIB_MATCHES = EL=mel EB=meb
 
 # The 64 bit ABI is not supported on the mips32 architecture.
@@ -28,6 +28,17 @@ MULTILIB_EXCEPTIONS += *mips32*/*mabi=64*
 
 # The 64 bit ABI is not supported on the mips32r2 architecture.
 # Because mips32r2 is the default we can't use that flag to trigger
-# the exception so we check for mabi=64 with no specific mips flag
-# instead.
+# the exception so we check for mabi=64 with no specific mips
+# architecture flag instead.
 MULTILIB_EXCEPTIONS += mabi=64*
+
+# We do not want to build mips16 versions of mips64* architectures.
+MULTILIB_EXCEPTIONS += *mips64*/*mips16*
+MULTILIB_EXCEPTIONS += *mips16/mabi=64*
+
+# We only want micromips for mips32r2 architecture and we do not want
+# it used in conjunction with -mips16.
+MULTILIB_EXCEPTIONS += *mips16/mmicromips*
+MULTILIB_EXCEPTIONS += *mips64*/mmicromips*
+MULTILIB_EXCEPTIONS += *mips32/mmicromips*
+MULTILIB_EXCEPTIONS += *mmicromips/mabi=64*