diff --git a/configure b/configure
index b1c6d4511c72306ba432324f407d7f7dbeaa99ac..9f6eda51d0ad8fa4f2980e9b5f6552af73ae9b11 100755
--- a/configure
+++ b/configure
@@ -2453,13 +2453,9 @@ case "$arch" in
     arm*)
         arch="arm"
     ;;
-    mips|mipsel|IP*)
+    mips*|IP*)
         arch="mips"
     ;;
-    mips64*)
-        arch="mips"
-        subarch="mips64"
-    ;;
     parisc|hppa)
         arch="parisc"
     ;;
@@ -2677,7 +2673,11 @@ check_64bit(){
 }
 
 case "$arch" in
-    alpha|ia64|mips|parisc|sparc)
+    alpha|ia64|parisc|sparc)
+        spic=$shared
+    ;;
+    mips)
+        check_64bit mips mips64 '_MIPS_SIM > 1'
         spic=$shared
     ;;
     x86)