--- /dev/null
+--- a/gcc/config/mips/linux.h
++++ b/gcc/config/mips/linux.h
+@@ -75,8 +75,7 @@ along with GCC; see the file COPYING3.
+ %{static:-static}}}"
+
+ #undef SUBTARGET_ASM_SPEC
+-#define SUBTARGET_ASM_SPEC \
+- "%{mabi=64: -64} %{mabicalls:%{fpic|fPIC|fpie|fPIE:-KPIC;:-mnon-pic-abicalls}}"
++#define SUBTARGET_ASM_SPEC "%{mabi=64: -64} %{!mno-abicalls:-KPIC}"
+
+ /* The MIPS assembler has different syntax for .set. We set it to
+ .dummy to trap any errors. */
+--- a/gcc/config/mips/linux64.h
++++ b/gcc/config/mips/linux64.h
+@@ -28,7 +28,7 @@ NO_SHARED_SPECS \
+
+ #undef SUBTARGET_ASM_SPEC
+ #define SUBTARGET_ASM_SPEC "\
+-%{mabicalls:%{fpic|fPIC|fpie|fPIE:-KPIC;:-mnon-pic-abicalls}} \
++%{!fno-PIC:%{!fno-pic:-KPIC}} \
+ %{fno-PIC:-non_shared} %{fno-pic:-non_shared}"
+
+ #undef LIB_SPEC