diff --git a/config/mt-mti b/config/mt-mti
new file mode 100644
index 0000000..85ad9e7
--- /dev/null
+++ b/config/mt-mti
@@ -0,0 +1,13 @@
+# We use -minterlink-mips16 so that the non-MIPS16 libraries can still be
+# linked against partly-MIPS16 code.  The -mcode-readable=pcrel option allows
+# MIPS16 libraries to run on Harvard-style split I/D memories, so long
+# as they have the D-to-I redirect for PC-relative loads.  -mno-gpopt
+# has two purposes: it allows libraries to be used in situations where
+# $gp != our _gp, and it allows them to be built with -G8 while
+# retaining link compatibility with -G0 and -G4.
+#
+# We do not default to -Os like mt-sde does, users who want that can configure
+# with --enable-target-optspace.
+
+CFLAGS_FOR_TARGET += -minterlink-mips16 -mcode-readable=pcrel -mno-gpopt
+CXXFLAGS_FOR_TARGET += -minterlink-mips16 -mcode-readable=pcrel -mno-gpopt
diff --git a/configure.ac b/configure.ac
index c346c2c..a87185a 100644
--- a/configure.ac
+++ b/configure.ac
@@ -2299,9 +2299,12 @@ case "${target}" in
   spu-*-*)
     target_makefile_frag="config/mt-spu"
     ;;
-  mips*-sde-elf* | mips*-mti-elf*)
+  mips*-sde-elf*)
     target_makefile_frag="config/mt-sde"
     ;;
+  mips*-mti-elf*)
+    target_makefile_frag="config/mt-mti"
+    ;;
   mipsisa*-*-elfoabi*)
     target_makefile_frag="config/mt-mips-elfoabi"
     ;;
