OSDN Git Service

config/
[pf3gnuchains/gcc-fork.git] / config / mt-sde
index e746161..775e50d 100644 (file)
@@ -1,8 +1,10 @@
-# We default to building libraries optimised for size.  We switch off
-# sibling-call optimization to permit interlinking of MIPS16 and
-# non-MIPS16 functions. The -mcode-xonly 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.
-
-CFLAGS_FOR_TARGET = -Os -fno-optimize-sibling-calls -mcode-xonly
-CXXFLAGS_FOR_TARGET = -Os -fno-optimize-sibling-calls -mcode-xonly
+# We default to building libraries optimised for size.  We use
+# -minterlink-mips16 so that the non-MIPS16 libraries can still be
+# linked against partly-MIPS16 code.  The -mcode-xonly 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 compability with -G0 and -G4.
+CFLAGS_FOR_TARGET = -Os -minterlink-mips16 -mcode-xonly -mno-gpopt
+CXXFLAGS_FOR_TARGET = -Os -minterlink-mips16 -mcode-xonly -mno-gpopt